今天介紹剩餘的容器,容器中我最常使用到的除了List外Dict也是其中之一,就讓我們進入今天的主題吧.
Tuple也稱作元組,tuple其實與List很像,操作方式也一樣(可參照上篇文章),唯一不同的是無法針對tuple進行修改,所以涉及到變更陣列的元素方法無法針對tuple使用.
tuple可用小括號()
包覆內用逗號,
分隔,也可不加()
但取用時依舊要使用[]
a = 1, 4, '123'
b = ('it', 'hello world')
print(type(a))
print(a)
print(type(b))
print(b)
#輸出:
#<class 'tuple'>
#(1, 4, '123')
#<class 'tuple'>
#('it', 'hello world')
這是就有一個問題了,tuple基本上跟List一樣何不直接使用List就好??
其實tuple還是有它的好處存在的,簡單來說tuple會存在的原因主要是執行速度上的考量,因無法修改結構較為間單,所以執行效能會比較好,另一個好處是能在內存放你不希望被異動的資料較為安全,以上就是Tuple的介紹嘍.
Dict字典其實與ASP.NET的Dictionary一樣,利用KeyValue方式儲存資料,取用資料時可透過key取得想對應的value.
{}
將元素包起來並用:
區分Key及Value再以,
分隔,Key的值可為int
或str
.a = {1:'123', '2': 345 }
print(type(a)) #輸出:<class 'dict'>
也可這樣宣告
a = {}
a['one'] = 1
a[2] = 'two'
print(type(a)) #輸出:<class 'dict'>
a = {'one':1, 2:'two'}
print(type(a)) #輸出:<class 'dict'>
print(a['one']) #輸出:1
print(a[2]) #輸出:two
a = {'one':1, 'two':2, 'tree':3, 'four':4} #範例
#key 為鍵值、value為值
a.clear()
: 清空字典a1 = a.copy
: 將a內容拷貝一份給a1a.items()
: 回傳dict_items格式的字典的(key,value)print(a.items())
#輸出:dict_items([('one', 1), ('two', 2), ('tree', 3), ('four', 4)])
a.keys()
: 列出所有Keyprint(a.keys())
#輸出:dict_keys(['one', 'two', 'tree', 'four'])
a.values()
: 列出所有valueprint(a.values())
#輸出:dict_values([1, 2, 3, 4])
a.update(a2)
: 將a2的key對應的value更新到a相同的key的valuea2 = {'one':11, 'two':222}
a.update(a2)
print(a)
#輸出:{'one': 11, 'two': 222, 'tree': 3, 'four': 4}
len(a)
: 取得字典長度max(a)
: 取得字典最大值min(a)
: 取得字典最小值set也稱作集合,以樣使用{}
宣告與dict不同的是沒有Key僅存放值,其主要目的是為了數學上有關集合的算法為主如以下範例:
a = {1, 2, 3, 4, 5}
b = {3, 4, 5, 6, 7}
print(type(a))
#數學上集合的運算子:
#且AND &
print(a & b) #輸出:{3, 4, 5}
#或OR
print(a | b) #輸出:{1, 2, 3, 4, 5, 6, 7}
#互斥XOR
print(a ^ b) #輸出:{1, 2, 6, 7}
到此python的資料型態也告一段落嘍,暸解資料的型態對於程式的撰寫是非常重要的基本功呢,
下一篇將學習python的運算式.
文章內容如果有錯誤歡迎留言告知,可以幫忙糾正錯誤的觀念,感謝!